Logic signals convey information by assuming a particular state at a particular time. Errors can be introduced by either incorrect determination of the logic state or by incorrect timing. Determination of a logic state is often done by sampling a signal one or more times during a single state, and processing the samples prior to making a decision about the state. It is important, however, that processing take place during a reliable time window in which the proper state exists. If processing were to occur outside of a reliable time window, errors could occur that might negatively affect the reliability of the logic decision.
One possible source of timing errors that could occur is imperfect channel alignment for signals stored on an encoder. Ideally, each logic state would have the same width and would begin and end at perfectly predictable times. Unfortunately, this is not always the case. As a result, logic decoders that read encoder outputs are typically designed to use a safety factor. The safety factor is intended to ensure an appropriate processing frequency so that an expected worst-case error can be tolerated. If the worst-case expected error is encountered, the decoder will still have performed enough processing during an error-free time window to render a correct determination of the state. Otherwise, if the encoder performs better than the worst case, the processing speed is higher than may be necessary.
Logic encoders may use multiple channels, which provides a source for timing errors, such as a mismatch between the timing of the different channels. In general, a multi-channel system with N channels can assume 2N possible states. A quadrature decoder, for example, has two channels, A and B, and can assume one of four possible states. To determine a state, a quadrature decoder samples both channels of an encoder. If one of the channels changes state at an incorrect time relative to the other channel, a logic state width error arises. Typically, a decoder will require multiple processing cycles for a reliable decision of a single logic state. The ratio of actual processing cycles divided by the theoretical minimum is called a safety factor (SF). The desired number of processing cycles used to decide a single logic state is an engineering choice, based on the reliability, quality and performance of the components used to make a logic state decision.
If the quadrature decoder is decoding signals from a media that is being read, the timing errors depend on the rate at which the media is read and the density of the logic states on the media. With a linear media, the decoder would need to operate at a rate given by the formula:CCFmin[MHz]=(Vencoder[m/s]/res [μm]) SFlinear  (1)Where:                CCFmin is the minimum recommended counter clock frequency in MHz        Vencoder is the velocity of the linear media in meters per second        res is the resolution of the media in micrometers        SFlinear is a chosen safety factor for the linear encoder.        
For rotary encoders, the formula is:CCFmin[MHz]=(ω[rpm]LPR IF/(60[sec]1[MHz])) SFrotary  (2)Where:                ω is the encoder revolutions per minute        LPR is the disk lines per revolution        IF is the digital interpolation factor        SFrotary is a chosen safety factor for the rotary encoder.        
A common, fixed SF is typically used for all decoders of the same design. The fixed SF is typically determined by calculating the worst-case error that could result on a hypothetical system operating as the worst combination of design and manufacturing tolerance specifications, calculating the resulting error-free, and then determining the number of processing cycles in the error-free interval. For example, a decoder operating at four times the frequency of a typical quality encoder might have a safety factor of approximately three. Not all decoders, however, operate with identical timing errors, even if sharing many common traits, such as design and manufacturing line. Thus, while the chosen counter clock frequency (CCF) may be appropriate for some decoders, it may be unnecessarily high for others.